home *** CD-ROM | disk | FTP | other *** search
/ Aminet 48 / Aminet 48 (2002)(GTI - Schatztruhe)[!][Apr 2002].iso / Aminet / docs / misc / MemManual.lha / MemManual / Include / clib / memory_protos.h
Encoding:
C/C++ Source or Header  |  2001-10-29  |  1.2 KB  |  37 lines

  1. #ifndef CLIB_MEMORY_PROTOS_H
  2. #define CLIB_MEMORY_PROTOS_H
  3.  
  4. #ifndef EXEC_TYPES_H
  5. #include <exec/types.h>
  6. #endif
  7.  
  8. #ifndef UTILITY_TAGITEM_H
  9. #include <utility/tagitem.h>
  10. #endif
  11.  
  12. struct AdrSpace *NewAdrSpaceA(struct TagItem *tags);
  13. struct AdrSpace *NewAdrSpace(Tag tag,...);
  14. void DeleteAdrSpace(struct AdrSpace *adr);
  15. struct VMPool *NewVMPoolA(struct TagItem *tags);
  16. struct VMPool *NewVMPool(Tag tag,...);
  17. void DeleteVMPool(struct VMPool *vmp);
  18. struct MMUContext *MMUContextOf(struct AdrSpace *adr);
  19.  
  20. BOOL LockMemory(struct AdrSpace *adr,APTR mem,ULONG size);
  21. void UnlockMemory(struct AdrSpace *adr,APTR mem,ULONG size,BOOL force);
  22. APTR HoldMemory(struct AdrSpace *adr,APTR mem,ULONG size);
  23. void UnholdMemory(struct AdrSpace *adr,APTR mem,ULONG size,BOOL force);
  24. BOOL SwapMemoryOut(struct AdrSpace *adr,APTR mem,ULONG size);
  25.  
  26. APTR AllocVMemory(struct VMPool *vmp,ULONG size);
  27. void FreeVMemory(struct VMPool *vmp,APTR adr, ULONG size);
  28. APTR PoolVBase(struct VMPool *vmp);
  29. ULONG PoolVSize(struct VMPool *vmp);
  30.  
  31. BOOL EnterAddressSpace(struct AdrSpace *adr,struct Task *task);
  32. BOOL LeaveAddressSpace(struct Task *task);
  33. struct AdrSpace *CurrentAddressSpace(struct Task *task);
  34. struct AdrSpace *AdrSpaceOfCtx(struct MMUContext *ctx);
  35.  
  36. #endif
  37.